<!DOCTYPE html>


  <html class="light page-post">


<head>
  <meta charset="utf-8">
  
  <title>win10如何手动配置wsl2 | Bright</title>

  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">

  
    <meta name="keywords" content="wsl,wsl2,win10子系统,linux," />
  

  <meta name="description" content="wsl2——便捷，快速，windows">
<meta property="og:type" content="article">
<meta property="og:title" content="win10如何手动配置wsl2">
<meta property="og:url" content="http://example.com/2021/01/30/%E5%AE%89%E8%A3%85wsl2/index.html">
<meta property="og:site_name" content="Bright">
<meta property="og:description" content="wsl2——便捷，快速，windows">
<meta property="og:locale" content="zh_CN">
<meta property="og:image" content="https://docs.microsoft.com/zh-cn/windows/wsl/media/store.png">
<meta property="og:image" content="https://docs.microsoft.com/zh-cn/windows/wsl/media/ubuntustore.png">
<meta property="og:image" content="https://docs.microsoft.com/zh-cn/windows/wsl/media/ubuntuinstall.png">
<meta property="og:image" content="https://docs.microsoft.com/zh-cn/windows/wsl/media/terminal.png">
<meta property="og:image" content="https://gitee.com/bright_rock/image_host/raw/master/img/20210130185908.png">
<meta property="og:image" content="https://gitee.com/bright_rock/image_host/raw/master/img/20210130190006.png">
<meta property="article:published_time" content="2021-01-30T10:47:26.000Z">
<meta property="article:modified_time" content="2021-01-31T13:26:28.397Z">
<meta property="article:author" content="璀璨丶">
<meta property="article:tag" content="wsl">
<meta property="article:tag" content="wsl2">
<meta property="article:tag" content="win10子系统">
<meta property="article:tag" content="linux">
<meta name="twitter:card" content="summary">
<meta name="twitter:image" content="https://docs.microsoft.com/zh-cn/windows/wsl/media/store.png">

  

  
    <link rel="icon" href="/favicon.ico">
  

  <link href="/css/styles.css?v=c114cbeddx" rel="stylesheet">


  
    
<link rel="stylesheet" href="/css/personal-style.css">

  

  
<!-- Google Analytics -->
<script type="text/javascript">
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');

ga('create', 'UA-38189205-1', 'auto');
ga('send', 'pageview');

</script>
<!-- End Google Analytics -->


  
  <script type="text/javascript">
    var _hmt = _hmt || [];
    (function() {
      var hm = document.createElement("script");
      hm.src = "//hm.baidu.com/hm.js?57e94d016e201fba3603a8a2b0263af0";
      var s = document.getElementsByTagName("script")[0];
      s.parentNode.insertBefore(hm, s);
    })();
  </script>


  
  <script type="text/javascript">
	(function(){
	    var bp = document.createElement('script');
	    var curProtocol = window.location.protocol.split(':')[0];
	    if (curProtocol === 'https') {
	        bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';        
	    }
	    else {
	        bp.src = 'http://push.zhanzhang.baidu.com/push.js';
	    }
	    var s = document.getElementsByTagName("script")[0];
	    s.parentNode.insertBefore(bp, s);
	})();
  </script>



  
    <script async src="https://busuanzi.ibruce.info/busuanzi/2.3/busuanzi.pure.mini.js"></script>
    <link rel="stylesheet" href="//cdn.bootcss.com/font-awesome/4.3.0/css/font-awesome.min.css">
  

<meta name="generator" content="Hexo 5.2.0"></head>

<body>


  
    <span id="toolbox-mobile" class="toolbox-mobile">盒子</span>
  

  <div class="post-header CENTER">
   
  <div class="toolbox">
    <a class="toolbox-entry" href="/">
      <span class="toolbox-entry-text">盒子</span>
      <i class="icon-angle-down"></i>
      <i class="icon-home"></i>
    </a>
    <ul class="list-toolbox">
      
        <li class="item-toolbox">
          <a
            class="CIRCLE"
            href="/archives/"
            rel="noopener noreferrer"
            target="_self"
            >
            博客
          </a>
        </li>
      
        <li class="item-toolbox">
          <a
            class="CIRCLE"
            href="/category/"
            rel="noopener noreferrer"
            target="_self"
            >
            分类
          </a>
        </li>
      
        <li class="item-toolbox">
          <a
            class="CIRCLE"
            href="/tag/"
            rel="noopener noreferrer"
            target="_self"
            >
            标签
          </a>
        </li>
      
        <li class="item-toolbox">
          <a
            class="CIRCLE"
            href="/link/"
            rel="noopener noreferrer"
            target="_self"
            >
            友链
          </a>
        </li>
      
        <li class="item-toolbox">
          <a
            class="CIRCLE"
            href="/about/"
            rel="noopener noreferrer"
            target="_self"
            >
            关于
          </a>
        </li>
      
        <li class="item-toolbox">
          <a
            class="CIRCLE"
            href="/atom.xml"
            rel="noopener noreferrer"
            target="_blank"
            >
            RSS
          </a>
        </li>
      
        <li class="item-toolbox">
          <a
            class="CIRCLE"
            href="/search/"
            rel="noopener noreferrer"
            target="_self"
            >
            搜索
          </a>
        </li>
      
    </ul>
  </div>


</div>


  <div id="toc" class="toc-article">
    <strong class="toc-title">文章目录</strong>
    <ol class="toc"><li class="toc-item toc-level-1"><a class="toc-link" href="#%E5%89%8D%E8%A8%80"><span class="toc-text">前言</span></a><ol class="toc-child"><li class="toc-item toc-level-2"><a class="toc-link" href="#Windows10%E6%89%8B%E5%8A%A8%E5%AE%89%E8%A3%85WSL2%E6%AD%A5%E9%AA%A4"><span class="toc-text">Windows10手动安装WSL2步骤</span></a></li><li class="toc-item toc-level-2"><a class="toc-link" href="#%E6%AD%A5%E9%AA%A4-1-%E5%90%AF%E7%94%A8%E9%80%82%E7%94%A8%E4%BA%8E-Linux-%E7%9A%84-Windows-%E5%AD%90%E7%B3%BB%E7%BB%9F"><span class="toc-text">步骤 1 - 启用适用于 Linux 的 Windows 子系统</span></a></li><li class="toc-item toc-level-2"><a class="toc-link" href="#%E6%AD%A5%E9%AA%A4-2-%E6%A3%80%E6%9F%A5%E8%BF%90%E8%A1%8C-WSL-2-%E7%9A%84%E8%A6%81%E6%B1%82"><span class="toc-text">步骤 2 - 检查运行 WSL 2 的要求</span></a></li><li class="toc-item toc-level-2"><a class="toc-link" href="#%E6%AD%A5%E9%AA%A4-3-%E5%90%AF%E7%94%A8%E8%99%9A%E6%8B%9F%E6%9C%BA%E5%8A%9F%E8%83%BD"><span class="toc-text">步骤 3 - 启用虚拟机功能</span></a></li><li class="toc-item toc-level-2"><a class="toc-link" href="#%E6%AD%A5%E9%AA%A4-4-%E4%B8%8B%E8%BD%BD-Linux-%E5%86%85%E6%A0%B8%E6%9B%B4%E6%96%B0%E5%8C%85"><span class="toc-text">步骤 4 - 下载 Linux 内核更新包</span></a></li><li class="toc-item toc-level-2"><a class="toc-link" href="#%E6%AD%A5%E9%AA%A4-5-%E5%B0%86-WSL-2-%E8%AE%BE%E7%BD%AE%E4%B8%BA%E9%BB%98%E8%AE%A4%E7%89%88%E6%9C%AC"><span class="toc-text">步骤 5 - 将 WSL 2 设置为默认版本</span></a></li><li class="toc-item toc-level-2"><a class="toc-link" href="#%E6%AD%A5%E9%AA%A4-6-%E5%AE%89%E8%A3%85%E6%89%80%E9%80%89%E7%9A%84-Linux-%E5%88%86%E5%8F%91"><span class="toc-text">步骤 6 - 安装所选的 Linux 分发</span></a></li><li class="toc-item toc-level-2"><a class="toc-link" href="#%E5%AE%89%E8%A3%85-Windows-%E7%BB%88%E7%AB%AF%EF%BC%88%E5%8F%AF%E9%80%89%EF%BC%89"><span class="toc-text">安装 Windows 终端（可选）</span></a></li><li class="toc-item toc-level-2"><a class="toc-link" href="#%E5%B0%86%E5%88%86%E5%8F%91%E7%89%88%E7%89%88%E6%9C%AC%E8%AE%BE%E7%BD%AE%E4%B8%BA-WSL-1-%E6%88%96-WSL-2"><span class="toc-text">将分发版版本设置为 WSL 1 或 WSL 2</span></a></li></ol></li></ol>
  </div>



<div class="content content-post CENTER">
   <article id="post-安装wsl2" class="article article-type-post" itemprop="blogPost">
  <header class="article-header">
    <h1 class="post-title">win10如何手动配置wsl2</h1>

    <div class="article-meta">
      <span>
        <i class="icon-calendar"></i>
        <span>2021.01.30</span>
      </span>

      
        <span class="article-author">
          <i class="icon-user"></i>
          <span>璀璨丶</span>
        </span>
      

      
  <span class="article-category">
    <i class="icon-list"></i>
    <a class="article-category-link" href="/categories/%E6%8A%80%E6%9C%AF/">技术</a>
  </span>



      

      
      <i class="fa fa-eye"></i> 
        <span id="busuanzi_container_page_pv">
           &nbsp热度 <span id="busuanzi_value_page_pv">
           <i class="fa fa-spinner fa-spin"></i></span>℃
        </span>
      
      
    </div>
  </header>

  <div class="article-content">
    
      <h1 id="前言"><a href="#前言" class="headerlink" title="前言"></a>前言</h1><p>作为开发或者运维人员，经常会遇到win和linux的选择问题，例如我们一边需要使用ms office，WPS，微信，行业软件，同时可能需要使用一些linux下的shell脚本，开发测试环境，等等。曾经，我们或许只能依靠各种虚拟机软件，或者在一台电脑上安装双系统，来解决这些问题。（当然，也可以配备2台机器）</p>
<p>而微软最近几年推出的wsl（Windows Subsystem for Linux）,以及进阶版wsl2，同时兼具linux的快捷和部署能力、以及windows的生态，并且，这种方案所占用的资源少，切换应用以及文件管理也都非常方便。尽管它在细分领域仍有一些兼容性问题，但仍然是目前最为推荐的解决方案，下面就来简单介绍一下如何在win10的机器上配置wsl2。</p>
<h2 id="Windows10手动安装WSL2步骤"><a href="#Windows10手动安装WSL2步骤" class="headerlink" title="Windows10手动安装WSL2步骤"></a>Windows10手动安装WSL2步骤</h2><p>如果你没有使用 Windows 预览体验版本，则需要按照以下步骤手动启用 WSL 所需的功能。</p>
<h2 id="步骤-1-启用适用于-Linux-的-Windows-子系统"><a href="#步骤-1-启用适用于-Linux-的-Windows-子系统" class="headerlink" title="步骤 1 - 启用适用于 Linux 的 Windows 子系统"></a>步骤 1 - 启用适用于 Linux 的 Windows 子系统</h2><p>需要先启用“适用于 Linux 的 Windows 子系统”可选功能，然后才能在 Windows 上安装 Linux 分发。</p>
<p>以管理员身份打开 PowerShell 并运行：</p>
<pre><code class="powershell">dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart</code></pre>
<p>建议现在转到步骤 #2，更新到 WSL 2，但如果只想安装 WSL 1，现在可以重新启动计算机，然后继续执行<a target="_blank" rel="noopener" href="https://docs.microsoft.com/zh-cn/windows/wsl/install-win10#step-6---install-your-linux-distribution-of-choice">步骤 6 - 安装所选的 Linux 发行版</a>。 若要更新到 WSL 2，请等待重新启动计算机，然后继续执行下一步。</p>
<h2 id="步骤-2-检查运行-WSL-2-的要求"><a href="#步骤-2-检查运行-WSL-2-的要求" class="headerlink" title="步骤 2 - 检查运行 WSL 2 的要求"></a>步骤 2 - 检查运行 WSL 2 的要求</h2><p>若要更新到 WSL 2，需要运行 Windows 10。</p>
<ul>
<li>对于 x64 系统：<strong>版本 1903</strong> 或更高版本，采用 <strong>内部版本 18362</strong> 或更高版本。</li>
<li>对于 ARM64 系统：<strong>版本 2004</strong> 或更高版本，采用 <strong>内部版本 19041</strong> 或更高版本。</li>
<li>低于 18362 的版本不支持 WSL 2。 使用 <a target="_blank" rel="noopener" href="https://www.microsoft.com/software-download/windows10">Windows Update 助手</a>更新 Windows 版本。</li>
</ul>
<p>若要检查 Windows 版本及内部版本号，选择 Windows 徽标键 + R，然后键入“winver”，选择“确定”。 （或者在 Windows 命令提示符下输入 <code>ver</code> 命令）。 更新到“设置”菜单中的<a href="ms-settings:windowsupdate">最新 Windows 版本</a>。</p>
<p> 备注</p>
<p>如果运行的是 Windows 10 版本1903 或 1909，请在 Windows 菜单中打开“设置”，导航到“更新和安全性”，然后选择“检查更新”。 内部版本号必须是 18362.1049+ 或 18363.1049+，次要内部版本号需要高于 .1049。 阅读详细信息：<a target="_blank" rel="noopener" href="https://devblogs.microsoft.com/commandline/wsl-2-support-is-coming-to-windows-10-versions-1903-and-1909/">WSL 2 即将支持 Windows 10 版本 1903 和 1909</a>。 请参阅<a target="_blank" rel="noopener" href="https://docs.microsoft.com/zh-cn/windows/wsl/troubleshooting#im-on-windows-10-version-1903-and-i-still-do-not-see-options-for-wsl-2">疑难解答说明</a>。</p>
<h2 id="步骤-3-启用虚拟机功能"><a href="#步骤-3-启用虚拟机功能" class="headerlink" title="步骤 3 - 启用虚拟机功能"></a>步骤 3 - 启用虚拟机功能</h2><p>安装 WSL 2 之前，必须启用“虚拟机平台”可选功能。 计算机需要<a target="_blank" rel="noopener" href="https://docs.microsoft.com/zh-cn/windows/wsl/troubleshooting#error-0x80370102-the-virtual-machine-could-not-be-started-because-a-required-feature-is-not-installed">虚拟化功能</a>才能使用此功能。</p>
<p>以管理员身份打开 PowerShell 并运行：</p>
<pre><code class="powershell">dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart</code></pre>
<p><strong>重新启动</strong> 计算机，以完成 WSL 安装并更新到 WSL 2。</p>
<h2 id="步骤-4-下载-Linux-内核更新包"><a href="#步骤-4-下载-Linux-内核更新包" class="headerlink" title="步骤 4 - 下载 Linux 内核更新包"></a>步骤 4 - 下载 Linux 内核更新包</h2><ol>
<li><p>下载最新包：</p>
<ul>
<li><p><a target="_blank" rel="noopener" href="https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi">适用于 x64 计算机的 WSL2 Linux 内核更新包</a></p>
<p>备注</p>
</li>
</ul>
<p>如果使用的是 ARM64 计算机，请下载 <a target="_blank" rel="noopener" href="https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_arm64.msi">ARM64 包</a>。 如果不确定自己计算机的类型，请打开命令提示符或 PowerShell，并输入：<code>systeminfo | find &quot;System Type&quot;</code>。</p>
</li>
<li><p>运行上一步中下载的更新包。 （双击以运行 - 系统将提示你提供提升的权限，选择“是”以批准此安装。）</p>
</li>
</ol>
<p>安装完成后，请继续执行下一步 - 在安装新的 Linux 分发时，将 WSL 2 设置为默认版本。 （如果希望将新的 Linux 安装设置为 WSL 1，请跳过此步骤。）</p>
<p> 备注</p>
<p>有关详细信息，请参阅 <a target="_blank" rel="noopener" href="https://aka.ms/cliblog">Windows 命令行博客</a>上的文章<a target="_blank" rel="noopener" href="https://devblogs.microsoft.com/commandline/wsl2-will-be-generally-available-in-windows-10-version-2004">对更新 WSL2 Linux 内核的更改</a>。</p>
<h2 id="步骤-5-将-WSL-2-设置为默认版本"><a href="#步骤-5-将-WSL-2-设置为默认版本" class="headerlink" title="步骤 5 - 将 WSL 2 设置为默认版本"></a>步骤 5 - 将 WSL 2 设置为默认版本</h2><p>打开 PowerShell，然后在安装新的 Linux 发行版时运行以下命令，将 WSL 2 设置为默认版本：</p>
<pre><code class="powershell">wsl --set-default-version 2</code></pre>
<h2 id="步骤-6-安装所选的-Linux-分发"><a href="#步骤-6-安装所选的-Linux-分发" class="headerlink" title="步骤 6 - 安装所选的 Linux 分发"></a>步骤 6 - 安装所选的 Linux 分发</h2><ol>
<li><p>打开 <a target="_blank" rel="noopener" href="https://aka.ms/wslstore">Microsoft Store</a>，并选择你偏好的 Linux 分发版。</p>
<p><img src="https://docs.microsoft.com/zh-cn/windows/wsl/media/store.png" alt="Microsoft Store 中的 Linux 分发版的视图"></p>
<p>单击以下链接会打开每个分发版的 Microsoft Store 页面：</p>
<ul>
<li><a target="_blank" rel="noopener" href="https://www.microsoft.com/store/apps/9pjn388hp8c9">Ubuntu 16.04 LTS</a></li>
<li><a target="_blank" rel="noopener" href="https://www.microsoft.com/store/apps/9N9TNGVNDL3Q">Ubuntu 18.04 LTS</a></li>
<li><a target="_blank" rel="noopener" href="https://www.microsoft.com/store/apps/9n6svws3rx71">Ubuntu 20.04 LTS</a></li>
<li><a target="_blank" rel="noopener" href="https://www.microsoft.com/store/apps/9NJFZK00FGKV">openSUSE Leap 15.1</a></li>
<li><a target="_blank" rel="noopener" href="https://www.microsoft.com/store/apps/9MZ3D1TRP8T1">SUSE Linux Enterprise Server 12 SP5</a></li>
<li><a target="_blank" rel="noopener" href="https://www.microsoft.com/store/apps/9PN498VPMF3Z">SUSE Linux Enterprise Server 15 SP1</a></li>
<li><a target="_blank" rel="noopener" href="https://www.microsoft.com/store/apps/9PKR34TNCV07">Kali Linux</a></li>
<li><a target="_blank" rel="noopener" href="https://www.microsoft.com/store/apps/9MSVKQC78PK6">Debian GNU/Linux</a></li>
<li><a target="_blank" rel="noopener" href="https://www.microsoft.com/store/apps/9n6gdm4k2hnc">Fedora Remix for WSL</a></li>
<li><a target="_blank" rel="noopener" href="https://www.microsoft.com/store/apps/9NV1GV1PXZ6P">Pengwin</a></li>
<li><a target="_blank" rel="noopener" href="https://www.microsoft.com/store/apps/9N8LP0X93VCP">Pengwin Enterprise</a></li>
<li><a target="_blank" rel="noopener" href="https://www.microsoft.com/store/apps/9p804crf0395">Alpine WSL</a></li>
</ul>
</li>
<li><p>在分发版的页面中，选择“获取”。</p>
<p><img src="https://docs.microsoft.com/zh-cn/windows/wsl/media/ubuntustore.png" alt="Microsoft Store 中的 Linux 分发版"></p>
</li>
</ol>
<p>首次启动新安装的 Linux 分发版时，将打开一个控制台窗口，系统会要求你等待一分钟或两分钟，以便文件解压缩并存储到电脑上。 未来的所有启动时间应不到一秒。</p>
<p>然后，需要<a target="_blank" rel="noopener" href="https://docs.microsoft.com/zh-cn/windows/wsl/user-support">为新的 Linux 分发版创建用户帐户和密码</a>。</p>
<p><img src="https://docs.microsoft.com/zh-cn/windows/wsl/media/ubuntuinstall.png" alt="Windows 控制台中的 Ubuntu 解包"></p>
<p><strong>祝贺你！现已成功安装并设置了与 Windows 操作系统完全集成的 Linux 分发！</strong></p>
<h2 id="安装-Windows-终端（可选）"><a href="#安装-Windows-终端（可选）" class="headerlink" title="安装 Windows 终端（可选）"></a>安装 Windows 终端（可选）</h2><p>Windows 终端可启用多个选项卡（在多个 Linux 命令行、Windows 命令提示符、PowerShell 和 Azure CLI 等之间快速切换）、创建键绑定（用于打开或关闭选项卡、复制粘贴等的快捷方式键）、使用搜索功能，以及使用自定义主题（配色方案、字体样式和大小、背景图像/模糊/透明度）。 <a target="_blank" rel="noopener" href="https://docs.microsoft.com/zh-cn/windows/terminal">了解详细信息。</a></p>
<p><a target="_blank" rel="noopener" href="https://docs.microsoft.com/zh-cn/windows/terminal/get-started">安装 Windows 终端</a>。</p>
<p><img src="https://docs.microsoft.com/zh-cn/windows/wsl/media/terminal.png" alt="Windows 终端"></p>
<h2 id="将分发版版本设置为-WSL-1-或-WSL-2"><a href="#将分发版版本设置为-WSL-1-或-WSL-2" class="headerlink" title="将分发版版本设置为 WSL 1 或 WSL 2"></a>将分发版版本设置为 WSL 1 或 WSL 2</h2><p>可打开 PowerShell 命令行并输入以下命令（仅在 <a href="ms-settings:windowsupdate">Windows 内部版本 18362 或更高版本</a>中可用），检查分配给每个已安装的 Linux 分发版的 WSL 版本：<code>wsl -l -v</code></p>
<pre><code class="powershell">wsl --list --verbose</code></pre>
<p>若要将分发版设置为受某一 WSL 版本支持，请运行：</p>
<pre><code class="powershell">wsl --set-version &lt;distribution name&gt; &lt;versionNumber&gt;</code></pre>
<p>请确保将 <code>&lt;distribution name&gt;</code> 替换为你的分发版的实际名称，并将 <code>&lt;versionNumber&gt;</code> 替换为数字“1”或“2”。 可以随时更改回 WSL 1，方法是运行与上面相同的命令，但将“2”替换为“1”。</p>
<p> 备注</p>
<p>从 WSL 1 更新到 WSL 2 可能需要几分钟才能完成，具体取决于目标分发版的大小。 如果从 Windows 10 周年更新或创意者更新运行 WSL 1 的旧（历史）安装，可能会遇到更新错误。 按照这些说明<a target="_blank" rel="noopener" href="https://docs.microsoft.com/zh-cn/windows/wsl/install-legacy#uninstallingremoving-the-legacy-distro">卸载并删除任何旧分发</a>。</p>
<p>如果 <code>wsl --set-default-version</code> 结果为无效命令，请输入 <code>wsl --help</code>。 如果 <code>--set-default-version</code> 未列出，则表示你的 OS 不支持它，你需要更新到版本 1903（内部版本 18362）或更高版本。</p>
<p>运行命令后如果看到此消息：<code>WSL 2 requires an update to its kernel component. For information please visit https://aka.ms/wsl2kernel</code>。 仍需要安装 MSI Linux 内核更新包。</p>
<p>此外，如果要使 WSL 2 成为你的默认体系结构，可以通过此命令执行该操作：</p>
<pre><code class="powershell">wsl --set-default-version 2</code></pre>
<p>这会将安装的任何新分发版的版本设置为 WSL 2。</p>
<p>以上内容转自微软wsl<a target="_blank" rel="noopener" href="https://docs.microsoft.com/zh-cn/windows/wsl/install-win10#step-2--check-requirements-for-running-wsl-2">官方文档</a></p>
<p>其中，步骤1和3，打开控制面板， 找到程序和功能，点击启用或关闭windows功能，也可以实现。</p>
<p><img src="https://gitee.com/bright_rock/image_host/raw/master/img/20210130185908.png" alt="image-20210130185856690"></p>
<p><img src="https://gitee.com/bright_rock/image_host/raw/master/img/20210130190006.png" alt="image-20210130190005788"></p>

    
  </div>

</article>


   
  <div class="text-center donation">
    <div class="inner-donation">
      <span class="btn-donation">支持一下</span>
      <div class="donation-body">
        <div class="tip text-center">扫一扫，支持璀璨丶</div>
        <ul>
        
          <li class="item">
            
              <span>微信扫一扫</span>
            
            <img src="/images/qr-wechat.png" alt="">
          </li>
        
          <li class="item">
            
              <span>支付宝扫一扫</span>
            
            <img src="/images/qr-alipay.png" alt="">
          </li>
        
        </ul>
      </div>
    </div>
  </div>


   
  <div class="box-prev-next clearfix">
    <a class="hide pull-left" href="/">
        <i class="icon icon-angle-left"></i>
    </a>
    <a class="show pull-right" href="/2021/04/27/2021-4-27-%E5%A5%BD%E5%83%8F%E5%A4%A7%E5%AE%B6%E9%83%BD%E5%9C%A8%E7%AD%89%E4%B8%83%E6%99%AE/">
        <i class="icon icon-angle-right"></i>
    </a>
  </div>




</div>


  <a id="backTop" class="back-top">
    <i class="icon-angle-up"></i>
  </a>




  <div class="modal" id="modal">
  <span id="cover" class="cover hide"></span>
  <div id="modal-dialog" class="modal-dialog hide-dialog">
    <div class="modal-header">
      <span id="close" class="btn-close">关闭</span>
    </div>
    <hr>
    <div class="modal-body">
      <ul class="list-toolbox">
        
          <li class="item-toolbox">
            <a
              class="CIRCLE"
              href="/archives/"
              rel="noopener noreferrer"
              target="_self"
              >
              博客
            </a>
          </li>
        
          <li class="item-toolbox">
            <a
              class="CIRCLE"
              href="/category/"
              rel="noopener noreferrer"
              target="_self"
              >
              分类
            </a>
          </li>
        
          <li class="item-toolbox">
            <a
              class="CIRCLE"
              href="/tag/"
              rel="noopener noreferrer"
              target="_self"
              >
              标签
            </a>
          </li>
        
          <li class="item-toolbox">
            <a
              class="CIRCLE"
              href="/link/"
              rel="noopener noreferrer"
              target="_self"
              >
              友链
            </a>
          </li>
        
          <li class="item-toolbox">
            <a
              class="CIRCLE"
              href="/about/"
              rel="noopener noreferrer"
              target="_self"
              >
              关于
            </a>
          </li>
        
          <li class="item-toolbox">
            <a
              class="CIRCLE"
              href="/atom.xml"
              rel="noopener noreferrer"
              target="_blank"
              >
              RSS
            </a>
          </li>
        
          <li class="item-toolbox">
            <a
              class="CIRCLE"
              href="/search/"
              rel="noopener noreferrer"
              target="_self"
              >
              搜索
            </a>
          </li>
        
      </ul>

    </div>
  </div>
</div>



  
      <div class="fexo-comments comments-post">
    

    

    
    

    

    
    

    

<!-- Gitalk评论插件通用代码 -->
<div id="gitalk-container"></div>

<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/gitalk@1/dist/gitalk.css">
<script src="https://cdn.jsdelivr.net/npm/gitalk@1/dist/gitalk.min.js"></script>
<script src="//cdn.bootcss.com/blueimp-md5/2.10.0/js/md5.js"></script>
<script>
const gitalk = new Gitalk({
  clientID: '277317290454635afa73',
  clientSecret: '78223c859304da5e8d71bfce136d436c6ff95c37',
  repo: 'blog-comment',
  owner: 'forsigner',
  // 在这里设置一下截取前50个字符串, 这是因为 github 对 label 的长度有了要求, 如果超过
  // 50个字符串则会报错.
  // id: location.pathname.split('/').pop().substring(0, 49),
  id: md5(location.pathname),
  admin: ['forsigner'],
  // facebook-like distraction free mode
  distractionFreeMode: false
})
gitalk.render('gitalk-container')
</script>
<!-- Gitalk代码结束 -->



  </div>

  

  <script type="text/javascript">
  function loadScript(url, callback) {
    var script = document.createElement('script')
    script.type = 'text/javascript';

    if (script.readyState) { //IE
      script.onreadystatechange = function() {
        if (script.readyState == 'loaded' ||
          script.readyState == 'complete') {
          script.onreadystatechange = null;
          callback();
        }
      };
    } else { //Others
      script.onload = function() {
        callback();
      };
    }

    script.src = url;
    document.getElementsByTagName('head')[0].appendChild(script);
  }

  window.onload = function() {
    loadScript('/js/bundle.js?235683', function() {
      // load success
    });
  }
</script>

</body>
</html>
